Redundant Array of Inexpensive Disks (RAID) is commonly used with n drives grouped together. With this RAID system, the effective data transfer rate is increased n times. This technique is called “striping,” which originated in the supercomputing environment where the transfer of large amounts of data to and from secondary storage is a frequent requirement. With this approach, the end physical drives become one or more logical volumes and may be implemented either through hardware or software.
The configuration of physical drives that comprise the RAID drive array is transparent to the computer operating system. Instead, the host computer operating system addresses the striped data in the drive array by logical volume and logical block number. Each logical volume includes one or more strips of data. Logical blocks belonging to several logical volumes might use one physical drive. The host operating system requests logical blocks from the drive array using a block size that it has determined to be the most efficient for itself. The RAID subsystem accepts block requests from the operating system and maps the requests to the appropriate physical drive, and further to a physical block on that drive.
In the most efficient configuration, the block size used by the operating system would match the RAID strip size. In addition, the alignment of the start of the operating system data would fall exactly on a strip boundary. In this configuration incoming requests from the operating system map most closely with the strips of data managed by the RAID subsystem, avoiding any additional strip accesses which would occur if the operating system block request unnecessarily crossed over a strip boundary. This unnecessary additional physical drive access can result in as much as a 50% performance loss.